#ifndef NANE_RENDERSYSTEMIMPL__H
#   define  NANE_RENDERSYSTEMIMPL__H

#   include "nane/RenderSystem/RenderSystem.h"

namespace nane
{
    class RenderSystem::Implementation
        : public SubSystem<IRenderSystem>::Implementation
    {
    public:
        Implementation();
        ~Implementation();
        
    public:
        void Release( VertexBuffer::Implementation* _vertexBufferImpl );
        void Release( IndexBuffer::Implementation* _indexBufferImpl );
        void Release( Texture::Implementation* _textureImpl );
        void Release( ConstantBuffer::Implementation* _constantBufferImpl );
        void Release( VertexShader::Implementation* _vertexShaderImpl );
        void Release( PixelShader::Implementation* _pixelShaderImpl );

    public:
        VertexShader currentVertexShader;
        PixelShader currentPixelShader;
    };
}   // namespace nane

#endif	// NANE_RENDERSYSTEMIMPL__H
